using FwkLight.Application;
using FwkLight.Application.Caching;
using FwkLight.CodeExtensions;

namespace FwkLight.Web
{
  public interface ICacheItemDictionary : IItemDictionary
  {
    //void UpdateCacheForExecutedTask<T>(IApplicationTask<T> task);
    void Remove<TaskType>(string cacheVariation) where TaskType : IApplicationTask;
    //void RemoveByPartialKey<TaskType>(string cacheVariation) where TaskType : IApplicationTask;
    void Add<ItemToPutInContext>(IItemKey<ItemToPutInContext> key, ItemToPutInContext item, int cachingTimeInHours);
  }
}